1 module gles.gl30;
2 
3 version(GLES30):
4 
5 import core.stdc.config;
6 
7 extern (C):
8 
9 enum __gl3_h_ = 1;
10 
11 /*
12 ** Copyright (c) 2013-2017 The Khronos Group Inc.
13 **
14 ** Permission is hereby granted, free of charge, to any person obtaining a
15 ** copy of this software and/or associated documentation files (the
16 ** "Materials"), to deal in the Materials without restriction, including
17 ** without limitation the rights to use, copy, modify, merge, publish,
18 ** distribute, sublicense, and/or sell copies of the Materials, and to
19 ** permit persons to whom the Materials are furnished to do so, subject to
20 ** the following conditions:
21 **
22 ** The above copyright notice and this permission notice shall be included
23 ** in all copies or substantial portions of the Materials.
24 **
25 ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
26 ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
27 ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
28 ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
29 ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
30 ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
31 ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
32 */
33 /*
34 ** This header is generated from the Khronos OpenGL / OpenGL ES XML
35 ** API Registry. The current version of the Registry, generator scripts
36 ** used to make the header, and the header can be found at
37 **   https://github.com/KhronosGroup/OpenGL-Registry
38 */
39 
40 enum GL_GLES_PROTOTYPES = 1;
41 
42 /* Generated on date 20170613 */
43 
44 /* Generated C header for:
45  * API: gles2
46  * Profile: common
47  * Versions considered: 2\.[0-9]|3\.0
48  * Versions emitted: .*
49  * Default extensions included: None
50  * Additional extensions included: _nomatch_^
51  * Extensions removed: _nomatch_^
52  */
53 
54 enum GL_ES_VERSION_2_0 = 1;
55 
56 alias GLbyte = byte;
57 alias GLclampf = float;
58 alias GLfixed = int;
59 alias GLshort = short;
60 alias GLushort = ushort;
61 alias GLvoid = void;
62 struct __GLsync;
63 alias GLsync = __GLsync*;
64 alias GLint64 = long;
65 alias GLuint64 = ulong;
66 alias GLenum = uint;
67 alias GLuint = uint;
68 alias GLchar = char;
69 alias GLfloat = float;
70 alias GLsizeiptr = c_long;
71 alias GLintptr = c_long;
72 alias GLbitfield = uint;
73 alias GLint = int;
74 alias GLboolean = ubyte;
75 alias GLsizei = int;
76 alias GLubyte = ubyte;
77 enum GL_DEPTH_BUFFER_BIT = 0x00000100;
78 enum GL_STENCIL_BUFFER_BIT = 0x00000400;
79 enum GL_COLOR_BUFFER_BIT = 0x00004000;
80 enum GL_FALSE = 0;
81 enum GL_TRUE = 1;
82 enum GL_POINTS = 0x0000;
83 enum GL_LINES = 0x0001;
84 enum GL_LINE_LOOP = 0x0002;
85 enum GL_LINE_STRIP = 0x0003;
86 enum GL_TRIANGLES = 0x0004;
87 enum GL_TRIANGLE_STRIP = 0x0005;
88 enum GL_TRIANGLE_FAN = 0x0006;
89 enum GL_ZERO = 0;
90 enum GL_ONE = 1;
91 enum GL_SRC_COLOR = 0x0300;
92 enum GL_ONE_MINUS_SRC_COLOR = 0x0301;
93 enum GL_SRC_ALPHA = 0x0302;
94 enum GL_ONE_MINUS_SRC_ALPHA = 0x0303;
95 enum GL_DST_ALPHA = 0x0304;
96 enum GL_ONE_MINUS_DST_ALPHA = 0x0305;
97 enum GL_DST_COLOR = 0x0306;
98 enum GL_ONE_MINUS_DST_COLOR = 0x0307;
99 enum GL_SRC_ALPHA_SATURATE = 0x0308;
100 enum GL_FUNC_ADD = 0x8006;
101 enum GL_BLEND_EQUATION = 0x8009;
102 enum GL_BLEND_EQUATION_RGB = 0x8009;
103 enum GL_BLEND_EQUATION_ALPHA = 0x883D;
104 enum GL_FUNC_SUBTRACT = 0x800A;
105 enum GL_FUNC_REVERSE_SUBTRACT = 0x800B;
106 enum GL_BLEND_DST_RGB = 0x80C8;
107 enum GL_BLEND_SRC_RGB = 0x80C9;
108 enum GL_BLEND_DST_ALPHA = 0x80CA;
109 enum GL_BLEND_SRC_ALPHA = 0x80CB;
110 enum GL_CONSTANT_COLOR = 0x8001;
111 enum GL_ONE_MINUS_CONSTANT_COLOR = 0x8002;
112 enum GL_CONSTANT_ALPHA = 0x8003;
113 enum GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004;
114 enum GL_BLEND_COLOR = 0x8005;
115 enum GL_ARRAY_BUFFER = 0x8892;
116 enum GL_ELEMENT_ARRAY_BUFFER = 0x8893;
117 enum GL_ARRAY_BUFFER_BINDING = 0x8894;
118 enum GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895;
119 enum GL_STREAM_DRAW = 0x88E0;
120 enum GL_STATIC_DRAW = 0x88E4;
121 enum GL_DYNAMIC_DRAW = 0x88E8;
122 enum GL_BUFFER_SIZE = 0x8764;
123 enum GL_BUFFER_USAGE = 0x8765;
124 enum GL_CURRENT_VERTEX_ATTRIB = 0x8626;
125 enum GL_FRONT = 0x0404;
126 enum GL_BACK = 0x0405;
127 enum GL_FRONT_AND_BACK = 0x0408;
128 enum GL_TEXTURE_2D = 0x0DE1;
129 enum GL_CULL_FACE = 0x0B44;
130 enum GL_BLEND = 0x0BE2;
131 enum GL_DITHER = 0x0BD0;
132 enum GL_STENCIL_TEST = 0x0B90;
133 enum GL_DEPTH_TEST = 0x0B71;
134 enum GL_SCISSOR_TEST = 0x0C11;
135 enum GL_POLYGON_OFFSET_FILL = 0x8037;
136 enum GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E;
137 enum GL_SAMPLE_COVERAGE = 0x80A0;
138 enum GL_NO_ERROR = 0;
139 enum GL_INVALID_ENUM = 0x0500;
140 enum GL_INVALID_VALUE = 0x0501;
141 enum GL_INVALID_OPERATION = 0x0502;
142 enum GL_OUT_OF_MEMORY = 0x0505;
143 enum GL_CW = 0x0900;
144 enum GL_CCW = 0x0901;
145 enum GL_LINE_WIDTH = 0x0B21;
146 enum GL_ALIASED_POINT_SIZE_RANGE = 0x846D;
147 enum GL_ALIASED_LINE_WIDTH_RANGE = 0x846E;
148 enum GL_CULL_FACE_MODE = 0x0B45;
149 enum GL_FRONT_FACE = 0x0B46;
150 enum GL_DEPTH_RANGE = 0x0B70;
151 enum GL_DEPTH_WRITEMASK = 0x0B72;
152 enum GL_DEPTH_CLEAR_VALUE = 0x0B73;
153 enum GL_DEPTH_FUNC = 0x0B74;
154 enum GL_STENCIL_CLEAR_VALUE = 0x0B91;
155 enum GL_STENCIL_FUNC = 0x0B92;
156 enum GL_STENCIL_FAIL = 0x0B94;
157 enum GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95;
158 enum GL_STENCIL_PASS_DEPTH_PASS = 0x0B96;
159 enum GL_STENCIL_REF = 0x0B97;
160 enum GL_STENCIL_VALUE_MASK = 0x0B93;
161 enum GL_STENCIL_WRITEMASK = 0x0B98;
162 enum GL_STENCIL_BACK_FUNC = 0x8800;
163 enum GL_STENCIL_BACK_FAIL = 0x8801;
164 enum GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802;
165 enum GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803;
166 enum GL_STENCIL_BACK_REF = 0x8CA3;
167 enum GL_STENCIL_BACK_VALUE_MASK = 0x8CA4;
168 enum GL_STENCIL_BACK_WRITEMASK = 0x8CA5;
169 enum GL_VIEWPORT = 0x0BA2;
170 enum GL_SCISSOR_BOX = 0x0C10;
171 enum GL_COLOR_CLEAR_VALUE = 0x0C22;
172 enum GL_COLOR_WRITEMASK = 0x0C23;
173 enum GL_UNPACK_ALIGNMENT = 0x0CF5;
174 enum GL_PACK_ALIGNMENT = 0x0D05;
175 enum GL_MAX_TEXTURE_SIZE = 0x0D33;
176 enum GL_MAX_VIEWPORT_DIMS = 0x0D3A;
177 enum GL_SUBPIXEL_BITS = 0x0D50;
178 enum GL_RED_BITS = 0x0D52;
179 enum GL_GREEN_BITS = 0x0D53;
180 enum GL_BLUE_BITS = 0x0D54;
181 enum GL_ALPHA_BITS = 0x0D55;
182 enum GL_DEPTH_BITS = 0x0D56;
183 enum GL_STENCIL_BITS = 0x0D57;
184 enum GL_POLYGON_OFFSET_UNITS = 0x2A00;
185 enum GL_POLYGON_OFFSET_FACTOR = 0x8038;
186 enum GL_TEXTURE_BINDING_2D = 0x8069;
187 enum GL_SAMPLE_BUFFERS = 0x80A8;
188 enum GL_SAMPLES = 0x80A9;
189 enum GL_SAMPLE_COVERAGE_VALUE = 0x80AA;
190 enum GL_SAMPLE_COVERAGE_INVERT = 0x80AB;
191 enum GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2;
192 enum GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3;
193 enum GL_DONT_CARE = 0x1100;
194 enum GL_FASTEST = 0x1101;
195 enum GL_NICEST = 0x1102;
196 enum GL_GENERATE_MIPMAP_HINT = 0x8192;
197 enum GL_BYTE = 0x1400;
198 enum GL_UNSIGNED_BYTE = 0x1401;
199 enum GL_SHORT = 0x1402;
200 enum GL_UNSIGNED_SHORT = 0x1403;
201 enum GL_INT = 0x1404;
202 enum GL_UNSIGNED_INT = 0x1405;
203 enum GL_FLOAT = 0x1406;
204 enum GL_FIXED = 0x140C;
205 enum GL_DEPTH_COMPONENT = 0x1902;
206 enum GL_ALPHA = 0x1906;
207 enum GL_RGB = 0x1907;
208 enum GL_RGBA = 0x1908;
209 enum GL_LUMINANCE = 0x1909;
210 enum GL_LUMINANCE_ALPHA = 0x190A;
211 enum GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033;
212 enum GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034;
213 enum GL_UNSIGNED_SHORT_5_6_5 = 0x8363;
214 enum GL_FRAGMENT_SHADER = 0x8B30;
215 enum GL_VERTEX_SHADER = 0x8B31;
216 enum GL_MAX_VERTEX_ATTRIBS = 0x8869;
217 enum GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB;
218 enum GL_MAX_VARYING_VECTORS = 0x8DFC;
219 enum GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D;
220 enum GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C;
221 enum GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872;
222 enum GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD;
223 enum GL_SHADER_TYPE = 0x8B4F;
224 enum GL_DELETE_STATUS = 0x8B80;
225 enum GL_LINK_STATUS = 0x8B82;
226 enum GL_VALIDATE_STATUS = 0x8B83;
227 enum GL_ATTACHED_SHADERS = 0x8B85;
228 enum GL_ACTIVE_UNIFORMS = 0x8B86;
229 enum GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87;
230 enum GL_ACTIVE_ATTRIBUTES = 0x8B89;
231 enum GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A;
232 enum GL_SHADING_LANGUAGE_VERSION = 0x8B8C;
233 enum GL_CURRENT_PROGRAM = 0x8B8D;
234 enum GL_NEVER = 0x0200;
235 enum GL_LESS = 0x0201;
236 enum GL_EQUAL = 0x0202;
237 enum GL_LEQUAL = 0x0203;
238 enum GL_GREATER = 0x0204;
239 enum GL_NOTEQUAL = 0x0205;
240 enum GL_GEQUAL = 0x0206;
241 enum GL_ALWAYS = 0x0207;
242 enum GL_KEEP = 0x1E00;
243 enum GL_REPLACE = 0x1E01;
244 enum GL_INCR = 0x1E02;
245 enum GL_DECR = 0x1E03;
246 enum GL_INVERT = 0x150A;
247 enum GL_INCR_WRAP = 0x8507;
248 enum GL_DECR_WRAP = 0x8508;
249 enum GL_VENDOR = 0x1F00;
250 enum GL_RENDERER = 0x1F01;
251 enum GL_VERSION = 0x1F02;
252 enum GL_EXTENSIONS = 0x1F03;
253 enum GL_NEAREST = 0x2600;
254 enum GL_LINEAR = 0x2601;
255 enum GL_NEAREST_MIPMAP_NEAREST = 0x2700;
256 enum GL_LINEAR_MIPMAP_NEAREST = 0x2701;
257 enum GL_NEAREST_MIPMAP_LINEAR = 0x2702;
258 enum GL_LINEAR_MIPMAP_LINEAR = 0x2703;
259 enum GL_TEXTURE_MAG_FILTER = 0x2800;
260 enum GL_TEXTURE_MIN_FILTER = 0x2801;
261 enum GL_TEXTURE_WRAP_S = 0x2802;
262 enum GL_TEXTURE_WRAP_T = 0x2803;
263 enum GL_TEXTURE = 0x1702;
264 enum GL_TEXTURE_CUBE_MAP = 0x8513;
265 enum GL_TEXTURE_BINDING_CUBE_MAP = 0x8514;
266 enum GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515;
267 enum GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516;
268 enum GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517;
269 enum GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518;
270 enum GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519;
271 enum GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A;
272 enum GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C;
273 enum GL_TEXTURE0 = 0x84C0;
274 enum GL_TEXTURE1 = 0x84C1;
275 enum GL_TEXTURE2 = 0x84C2;
276 enum GL_TEXTURE3 = 0x84C3;
277 enum GL_TEXTURE4 = 0x84C4;
278 enum GL_TEXTURE5 = 0x84C5;
279 enum GL_TEXTURE6 = 0x84C6;
280 enum GL_TEXTURE7 = 0x84C7;
281 enum GL_TEXTURE8 = 0x84C8;
282 enum GL_TEXTURE9 = 0x84C9;
283 enum GL_TEXTURE10 = 0x84CA;
284 enum GL_TEXTURE11 = 0x84CB;
285 enum GL_TEXTURE12 = 0x84CC;
286 enum GL_TEXTURE13 = 0x84CD;
287 enum GL_TEXTURE14 = 0x84CE;
288 enum GL_TEXTURE15 = 0x84CF;
289 enum GL_TEXTURE16 = 0x84D0;
290 enum GL_TEXTURE17 = 0x84D1;
291 enum GL_TEXTURE18 = 0x84D2;
292 enum GL_TEXTURE19 = 0x84D3;
293 enum GL_TEXTURE20 = 0x84D4;
294 enum GL_TEXTURE21 = 0x84D5;
295 enum GL_TEXTURE22 = 0x84D6;
296 enum GL_TEXTURE23 = 0x84D7;
297 enum GL_TEXTURE24 = 0x84D8;
298 enum GL_TEXTURE25 = 0x84D9;
299 enum GL_TEXTURE26 = 0x84DA;
300 enum GL_TEXTURE27 = 0x84DB;
301 enum GL_TEXTURE28 = 0x84DC;
302 enum GL_TEXTURE29 = 0x84DD;
303 enum GL_TEXTURE30 = 0x84DE;
304 enum GL_TEXTURE31 = 0x84DF;
305 enum GL_ACTIVE_TEXTURE = 0x84E0;
306 enum GL_REPEAT = 0x2901;
307 enum GL_CLAMP_TO_EDGE = 0x812F;
308 enum GL_MIRRORED_REPEAT = 0x8370;
309 enum GL_FLOAT_VEC2 = 0x8B50;
310 enum GL_FLOAT_VEC3 = 0x8B51;
311 enum GL_FLOAT_VEC4 = 0x8B52;
312 enum GL_INT_VEC2 = 0x8B53;
313 enum GL_INT_VEC3 = 0x8B54;
314 enum GL_INT_VEC4 = 0x8B55;
315 enum GL_BOOL = 0x8B56;
316 enum GL_BOOL_VEC2 = 0x8B57;
317 enum GL_BOOL_VEC3 = 0x8B58;
318 enum GL_BOOL_VEC4 = 0x8B59;
319 enum GL_FLOAT_MAT2 = 0x8B5A;
320 enum GL_FLOAT_MAT3 = 0x8B5B;
321 enum GL_FLOAT_MAT4 = 0x8B5C;
322 enum GL_SAMPLER_2D = 0x8B5E;
323 enum GL_SAMPLER_CUBE = 0x8B60;
324 enum GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622;
325 enum GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623;
326 enum GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624;
327 enum GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625;
328 enum GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A;
329 enum GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645;
330 enum GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F;
331 enum GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A;
332 enum GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B;
333 enum GL_COMPILE_STATUS = 0x8B81;
334 enum GL_INFO_LOG_LENGTH = 0x8B84;
335 enum GL_SHADER_SOURCE_LENGTH = 0x8B88;
336 enum GL_SHADER_COMPILER = 0x8DFA;
337 enum GL_SHADER_BINARY_FORMATS = 0x8DF8;
338 enum GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9;
339 enum GL_LOW_FLOAT = 0x8DF0;
340 enum GL_MEDIUM_FLOAT = 0x8DF1;
341 enum GL_HIGH_FLOAT = 0x8DF2;
342 enum GL_LOW_INT = 0x8DF3;
343 enum GL_MEDIUM_INT = 0x8DF4;
344 enum GL_HIGH_INT = 0x8DF5;
345 enum GL_FRAMEBUFFER = 0x8D40;
346 enum GL_RENDERBUFFER = 0x8D41;
347 enum GL_RGBA4 = 0x8056;
348 enum GL_RGB5_A1 = 0x8057;
349 enum GL_RGB565 = 0x8D62;
350 enum GL_DEPTH_COMPONENT16 = 0x81A5;
351 enum GL_STENCIL_INDEX8 = 0x8D48;
352 enum GL_RENDERBUFFER_WIDTH = 0x8D42;
353 enum GL_RENDERBUFFER_HEIGHT = 0x8D43;
354 enum GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44;
355 enum GL_RENDERBUFFER_RED_SIZE = 0x8D50;
356 enum GL_RENDERBUFFER_GREEN_SIZE = 0x8D51;
357 enum GL_RENDERBUFFER_BLUE_SIZE = 0x8D52;
358 enum GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53;
359 enum GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54;
360 enum GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55;
361 enum GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0;
362 enum GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1;
363 enum GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2;
364 enum GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3;
365 enum GL_COLOR_ATTACHMENT0 = 0x8CE0;
366 enum GL_DEPTH_ATTACHMENT = 0x8D00;
367 enum GL_STENCIL_ATTACHMENT = 0x8D20;
368 enum GL_NONE = 0;
369 enum GL_FRAMEBUFFER_COMPLETE = 0x8CD5;
370 enum GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6;
371 enum GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7;
372 enum GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9;
373 enum GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD;
374 enum GL_FRAMEBUFFER_BINDING = 0x8CA6;
375 enum GL_RENDERBUFFER_BINDING = 0x8CA7;
376 enum GL_MAX_RENDERBUFFER_SIZE = 0x84E8;
377 enum GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506;
378 alias PFNGLACTIVETEXTUREPROC = void function (GLenum texture);
379 alias PFNGLATTACHSHADERPROC = void function (GLuint program, GLuint shader);
380 alias PFNGLBINDATTRIBLOCATIONPROC = void function (GLuint program, GLuint index, const(GLchar)* name);
381 alias PFNGLBINDBUFFERPROC = void function (GLenum target, GLuint buffer);
382 alias PFNGLBINDFRAMEBUFFERPROC = void function (GLenum target, GLuint framebuffer);
383 alias PFNGLBINDRENDERBUFFERPROC = void function (GLenum target, GLuint renderbuffer);
384 alias PFNGLBINDTEXTUREPROC = void function (GLenum target, GLuint texture);
385 alias PFNGLBLENDCOLORPROC = void function (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
386 alias PFNGLBLENDEQUATIONPROC = void function (GLenum mode);
387 alias PFNGLBLENDEQUATIONSEPARATEPROC = void function (GLenum modeRGB, GLenum modeAlpha);
388 alias PFNGLBLENDFUNCPROC = void function (GLenum sfactor, GLenum dfactor);
389 alias PFNGLBLENDFUNCSEPARATEPROC = void function (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
390 alias PFNGLBUFFERDATAPROC = void function (GLenum target, GLsizeiptr size, const(void)* data, GLenum usage);
391 alias PFNGLBUFFERSUBDATAPROC = void function (GLenum target, GLintptr offset, GLsizeiptr size, const(void)* data);
392 alias PFNGLCHECKFRAMEBUFFERSTATUSPROC = uint function (GLenum target);
393 alias PFNGLCLEARPROC = void function (GLbitfield mask);
394 alias PFNGLCLEARCOLORPROC = void function (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
395 alias PFNGLCLEARDEPTHFPROC = void function (GLfloat d);
396 alias PFNGLCLEARSTENCILPROC = void function (GLint s);
397 alias PFNGLCOLORMASKPROC = void function (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
398 alias PFNGLCOMPILESHADERPROC = void function (GLuint shader);
399 alias PFNGLCOMPRESSEDTEXIMAGE2DPROC = void function (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const(void)* data);
400 alias PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC = void function (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const(void)* data);
401 alias PFNGLCOPYTEXIMAGE2DPROC = void function (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
402 alias PFNGLCOPYTEXSUBIMAGE2DPROC = void function (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
403 alias PFNGLCREATEPROGRAMPROC = uint function ();
404 alias PFNGLCREATESHADERPROC = uint function (GLenum type);
405 alias PFNGLCULLFACEPROC = void function (GLenum mode);
406 alias PFNGLDELETEBUFFERSPROC = void function (GLsizei n, const(GLuint)* buffers);
407 alias PFNGLDELETEFRAMEBUFFERSPROC = void function (GLsizei n, const(GLuint)* framebuffers);
408 alias PFNGLDELETEPROGRAMPROC = void function (GLuint program);
409 alias PFNGLDELETERENDERBUFFERSPROC = void function (GLsizei n, const(GLuint)* renderbuffers);
410 alias PFNGLDELETESHADERPROC = void function (GLuint shader);
411 alias PFNGLDELETETEXTURESPROC = void function (GLsizei n, const(GLuint)* textures);
412 alias PFNGLDEPTHFUNCPROC = void function (GLenum func);
413 alias PFNGLDEPTHMASKPROC = void function (GLboolean flag);
414 alias PFNGLDEPTHRANGEFPROC = void function (GLfloat n, GLfloat f);
415 alias PFNGLDETACHSHADERPROC = void function (GLuint program, GLuint shader);
416 alias PFNGLDISABLEPROC = void function (GLenum cap);
417 alias PFNGLDISABLEVERTEXATTRIBARRAYPROC = void function (GLuint index);
418 alias PFNGLDRAWARRAYSPROC = void function (GLenum mode, GLint first, GLsizei count);
419 alias PFNGLDRAWELEMENTSPROC = void function (GLenum mode, GLsizei count, GLenum type, const(void)* indices);
420 alias PFNGLENABLEPROC = void function (GLenum cap);
421 alias PFNGLENABLEVERTEXATTRIBARRAYPROC = void function (GLuint index);
422 alias PFNGLFINISHPROC = void function ();
423 alias PFNGLFLUSHPROC = void function ();
424 alias PFNGLFRAMEBUFFERRENDERBUFFERPROC = void function (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
425 alias PFNGLFRAMEBUFFERTEXTURE2DPROC = void function (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
426 alias PFNGLFRONTFACEPROC = void function (GLenum mode);
427 alias PFNGLGENBUFFERSPROC = void function (GLsizei n, GLuint* buffers);
428 alias PFNGLGENERATEMIPMAPPROC = void function (GLenum target);
429 alias PFNGLGENFRAMEBUFFERSPROC = void function (GLsizei n, GLuint* framebuffers);
430 alias PFNGLGENRENDERBUFFERSPROC = void function (GLsizei n, GLuint* renderbuffers);
431 alias PFNGLGENTEXTURESPROC = void function (GLsizei n, GLuint* textures);
432 alias PFNGLGETACTIVEATTRIBPROC = void function (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
433 alias PFNGLGETACTIVEUNIFORMPROC = void function (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
434 alias PFNGLGETATTACHEDSHADERSPROC = void function (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders);
435 alias PFNGLGETATTRIBLOCATIONPROC = int function (GLuint program, const(GLchar)* name);
436 alias PFNGLGETBOOLEANVPROC = void function (GLenum pname, GLboolean* data);
437 alias PFNGLGETBUFFERPARAMETERIVPROC = void function (GLenum target, GLenum pname, GLint* params);
438 alias PFNGLGETERRORPROC = uint function ();
439 alias PFNGLGETFLOATVPROC = void function (GLenum pname, GLfloat* data);
440 alias PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC = void function (GLenum target, GLenum attachment, GLenum pname, GLint* params);
441 alias PFNGLGETINTEGERVPROC = void function (GLenum pname, GLint* data);
442 alias PFNGLGETPROGRAMIVPROC = void function (GLuint program, GLenum pname, GLint* params);
443 alias PFNGLGETPROGRAMINFOLOGPROC = void function (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
444 alias PFNGLGETRENDERBUFFERPARAMETERIVPROC = void function (GLenum target, GLenum pname, GLint* params);
445 alias PFNGLGETSHADERIVPROC = void function (GLuint shader, GLenum pname, GLint* params);
446 alias PFNGLGETSHADERINFOLOGPROC = void function (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
447 alias PFNGLGETSHADERPRECISIONFORMATPROC = void function (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
448 alias PFNGLGETSHADERSOURCEPROC = void function (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* source);
449 alias PFNGLGETSTRINGPROC = const(ubyte)* function (GLenum name);
450 alias PFNGLGETTEXPARAMETERFVPROC = void function (GLenum target, GLenum pname, GLfloat* params);
451 alias PFNGLGETTEXPARAMETERIVPROC = void function (GLenum target, GLenum pname, GLint* params);
452 alias PFNGLGETUNIFORMFVPROC = void function (GLuint program, GLint location, GLfloat* params);
453 alias PFNGLGETUNIFORMIVPROC = void function (GLuint program, GLint location, GLint* params);
454 alias PFNGLGETUNIFORMLOCATIONPROC = int function (GLuint program, const(GLchar)* name);
455 alias PFNGLGETVERTEXATTRIBFVPROC = void function (GLuint index, GLenum pname, GLfloat* params);
456 alias PFNGLGETVERTEXATTRIBIVPROC = void function (GLuint index, GLenum pname, GLint* params);
457 alias PFNGLGETVERTEXATTRIBPOINTERVPROC = void function (GLuint index, GLenum pname, void** pointer);
458 alias PFNGLHINTPROC = void function (GLenum target, GLenum mode);
459 alias PFNGLISBUFFERPROC = ubyte function (GLuint buffer);
460 alias PFNGLISENABLEDPROC = ubyte function (GLenum cap);
461 alias PFNGLISFRAMEBUFFERPROC = ubyte function (GLuint framebuffer);
462 alias PFNGLISPROGRAMPROC = ubyte function (GLuint program);
463 alias PFNGLISRENDERBUFFERPROC = ubyte function (GLuint renderbuffer);
464 alias PFNGLISSHADERPROC = ubyte function (GLuint shader);
465 alias PFNGLISTEXTUREPROC = ubyte function (GLuint texture);
466 alias PFNGLLINEWIDTHPROC = void function (GLfloat width);
467 alias PFNGLLINKPROGRAMPROC = void function (GLuint program);
468 alias PFNGLPIXELSTOREIPROC = void function (GLenum pname, GLint param);
469 alias PFNGLPOLYGONOFFSETPROC = void function (GLfloat factor, GLfloat units);
470 alias PFNGLREADPIXELSPROC = void function (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels);
471 alias PFNGLRELEASESHADERCOMPILERPROC = void function ();
472 alias PFNGLRENDERBUFFERSTORAGEPROC = void function (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
473 alias PFNGLSAMPLECOVERAGEPROC = void function (GLfloat value, GLboolean invert);
474 alias PFNGLSCISSORPROC = void function (GLint x, GLint y, GLsizei width, GLsizei height);
475 alias PFNGLSHADERBINARYPROC = void function (GLsizei count, const(GLuint)* shaders, GLenum binaryformat, const(void)* binary, GLsizei length);
476 alias PFNGLSHADERSOURCEPROC = void function (GLuint shader, GLsizei count, const(GLchar*)* string, const(GLint)* length);
477 alias PFNGLSTENCILFUNCPROC = void function (GLenum func, GLint ref_, GLuint mask);
478 alias PFNGLSTENCILFUNCSEPARATEPROC = void function (GLenum face, GLenum func, GLint ref_, GLuint mask);
479 alias PFNGLSTENCILMASKPROC = void function (GLuint mask);
480 alias PFNGLSTENCILMASKSEPARATEPROC = void function (GLenum face, GLuint mask);
481 alias PFNGLSTENCILOPPROC = void function (GLenum fail, GLenum zfail, GLenum zpass);
482 alias PFNGLSTENCILOPSEPARATEPROC = void function (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
483 alias PFNGLTEXIMAGE2DPROC = void function (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const(void)* pixels);
484 alias PFNGLTEXPARAMETERFPROC = void function (GLenum target, GLenum pname, GLfloat param);
485 alias PFNGLTEXPARAMETERFVPROC = void function (GLenum target, GLenum pname, const(GLfloat)* params);
486 alias PFNGLTEXPARAMETERIPROC = void function (GLenum target, GLenum pname, GLint param);
487 alias PFNGLTEXPARAMETERIVPROC = void function (GLenum target, GLenum pname, const(GLint)* params);
488 alias PFNGLTEXSUBIMAGE2DPROC = void function (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const(void)* pixels);
489 alias PFNGLUNIFORM1FPROC = void function (GLint location, GLfloat v0);
490 alias PFNGLUNIFORM1FVPROC = void function (GLint location, GLsizei count, const(GLfloat)* value);
491 alias PFNGLUNIFORM1IPROC = void function (GLint location, GLint v0);
492 alias PFNGLUNIFORM1IVPROC = void function (GLint location, GLsizei count, const(GLint)* value);
493 alias PFNGLUNIFORM2FPROC = void function (GLint location, GLfloat v0, GLfloat v1);
494 alias PFNGLUNIFORM2FVPROC = void function (GLint location, GLsizei count, const(GLfloat)* value);
495 alias PFNGLUNIFORM2IPROC = void function (GLint location, GLint v0, GLint v1);
496 alias PFNGLUNIFORM2IVPROC = void function (GLint location, GLsizei count, const(GLint)* value);
497 alias PFNGLUNIFORM3FPROC = void function (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
498 alias PFNGLUNIFORM3FVPROC = void function (GLint location, GLsizei count, const(GLfloat)* value);
499 alias PFNGLUNIFORM3IPROC = void function (GLint location, GLint v0, GLint v1, GLint v2);
500 alias PFNGLUNIFORM3IVPROC = void function (GLint location, GLsizei count, const(GLint)* value);
501 alias PFNGLUNIFORM4FPROC = void function (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
502 alias PFNGLUNIFORM4FVPROC = void function (GLint location, GLsizei count, const(GLfloat)* value);
503 alias PFNGLUNIFORM4IPROC = void function (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
504 alias PFNGLUNIFORM4IVPROC = void function (GLint location, GLsizei count, const(GLint)* value);
505 alias PFNGLUNIFORMMATRIX2FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
506 alias PFNGLUNIFORMMATRIX3FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
507 alias PFNGLUNIFORMMATRIX4FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
508 alias PFNGLUSEPROGRAMPROC = void function (GLuint program);
509 alias PFNGLVALIDATEPROGRAMPROC = void function (GLuint program);
510 alias PFNGLVERTEXATTRIB1FPROC = void function (GLuint index, GLfloat x);
511 alias PFNGLVERTEXATTRIB1FVPROC = void function (GLuint index, const(GLfloat)* v);
512 alias PFNGLVERTEXATTRIB2FPROC = void function (GLuint index, GLfloat x, GLfloat y);
513 alias PFNGLVERTEXATTRIB2FVPROC = void function (GLuint index, const(GLfloat)* v);
514 alias PFNGLVERTEXATTRIB3FPROC = void function (GLuint index, GLfloat x, GLfloat y, GLfloat z);
515 alias PFNGLVERTEXATTRIB3FVPROC = void function (GLuint index, const(GLfloat)* v);
516 alias PFNGLVERTEXATTRIB4FPROC = void function (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
517 alias PFNGLVERTEXATTRIB4FVPROC = void function (GLuint index, const(GLfloat)* v);
518 alias PFNGLVERTEXATTRIBPOINTERPROC = void function (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const(void)* pointer);
519 alias PFNGLVIEWPORTPROC = void function (GLint x, GLint y, GLsizei width, GLsizei height);
520 void glActiveTexture (GLenum texture);
521 void glAttachShader (GLuint program, GLuint shader);
522 void glBindAttribLocation (GLuint program, GLuint index, const(GLchar)* name);
523 void glBindBuffer (GLenum target, GLuint buffer);
524 void glBindFramebuffer (GLenum target, GLuint framebuffer);
525 void glBindRenderbuffer (GLenum target, GLuint renderbuffer);
526 void glBindTexture (GLenum target, GLuint texture);
527 void glBlendColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
528 void glBlendEquation (GLenum mode);
529 void glBlendEquationSeparate (GLenum modeRGB, GLenum modeAlpha);
530 void glBlendFunc (GLenum sfactor, GLenum dfactor);
531 void glBlendFuncSeparate (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
532 void glBufferData (GLenum target, GLsizeiptr size, const(void)* data, GLenum usage);
533 void glBufferSubData (GLenum target, GLintptr offset, GLsizeiptr size, const(void)* data);
534 GLenum glCheckFramebufferStatus (GLenum target);
535 void glClear (GLbitfield mask);
536 void glClearColor (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
537 void glClearDepthf (GLfloat d);
538 void glClearStencil (GLint s);
539 void glColorMask (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
540 void glCompileShader (GLuint shader);
541 void glCompressedTexImage2D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const(void)* data);
542 void glCompressedTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const(void)* data);
543 void glCopyTexImage2D (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
544 void glCopyTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
545 GLuint glCreateProgram ();
546 GLuint glCreateShader (GLenum type);
547 void glCullFace (GLenum mode);
548 void glDeleteBuffers (GLsizei n, const(GLuint)* buffers);
549 void glDeleteFramebuffers (GLsizei n, const(GLuint)* framebuffers);
550 void glDeleteProgram (GLuint program);
551 void glDeleteRenderbuffers (GLsizei n, const(GLuint)* renderbuffers);
552 void glDeleteShader (GLuint shader);
553 void glDeleteTextures (GLsizei n, const(GLuint)* textures);
554 void glDepthFunc (GLenum func);
555 void glDepthMask (GLboolean flag);
556 void glDepthRangef (GLfloat n, GLfloat f);
557 void glDetachShader (GLuint program, GLuint shader);
558 void glDisable (GLenum cap);
559 void glDisableVertexAttribArray (GLuint index);
560 void glDrawArrays (GLenum mode, GLint first, GLsizei count);
561 void glDrawElements (GLenum mode, GLsizei count, GLenum type, const(void)* indices);
562 void glEnable (GLenum cap);
563 void glEnableVertexAttribArray (GLuint index);
564 void glFinish ();
565 void glFlush ();
566 void glFramebufferRenderbuffer (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
567 void glFramebufferTexture2D (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
568 void glFrontFace (GLenum mode);
569 void glGenBuffers (GLsizei n, GLuint* buffers);
570 void glGenerateMipmap (GLenum target);
571 void glGenFramebuffers (GLsizei n, GLuint* framebuffers);
572 void glGenRenderbuffers (GLsizei n, GLuint* renderbuffers);
573 void glGenTextures (GLsizei n, GLuint* textures);
574 void glGetActiveAttrib (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
575 void glGetActiveUniform (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLint* size, GLenum* type, GLchar* name);
576 void glGetAttachedShaders (GLuint program, GLsizei maxCount, GLsizei* count, GLuint* shaders);
577 GLint glGetAttribLocation (GLuint program, const(GLchar)* name);
578 void glGetBooleanv (GLenum pname, GLboolean* data);
579 void glGetBufferParameteriv (GLenum target, GLenum pname, GLint* params);
580 GLenum glGetError ();
581 void glGetFloatv (GLenum pname, GLfloat* data);
582 void glGetFramebufferAttachmentParameteriv (GLenum target, GLenum attachment, GLenum pname, GLint* params);
583 void glGetIntegerv (GLenum pname, GLint* data);
584 void glGetProgramiv (GLuint program, GLenum pname, GLint* params);
585 void glGetProgramInfoLog (GLuint program, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
586 void glGetRenderbufferParameteriv (GLenum target, GLenum pname, GLint* params);
587 void glGetShaderiv (GLuint shader, GLenum pname, GLint* params);
588 void glGetShaderInfoLog (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* infoLog);
589 void glGetShaderPrecisionFormat (GLenum shadertype, GLenum precisiontype, GLint* range, GLint* precision);
590 void glGetShaderSource (GLuint shader, GLsizei bufSize, GLsizei* length, GLchar* source);
591 const(GLubyte)* glGetString (GLenum name);
592 void glGetTexParameterfv (GLenum target, GLenum pname, GLfloat* params);
593 void glGetTexParameteriv (GLenum target, GLenum pname, GLint* params);
594 void glGetUniformfv (GLuint program, GLint location, GLfloat* params);
595 void glGetUniformiv (GLuint program, GLint location, GLint* params);
596 GLint glGetUniformLocation (GLuint program, const(GLchar)* name);
597 void glGetVertexAttribfv (GLuint index, GLenum pname, GLfloat* params);
598 void glGetVertexAttribiv (GLuint index, GLenum pname, GLint* params);
599 void glGetVertexAttribPointerv (GLuint index, GLenum pname, void** pointer);
600 void glHint (GLenum target, GLenum mode);
601 GLboolean glIsBuffer (GLuint buffer);
602 GLboolean glIsEnabled (GLenum cap);
603 GLboolean glIsFramebuffer (GLuint framebuffer);
604 GLboolean glIsProgram (GLuint program);
605 GLboolean glIsRenderbuffer (GLuint renderbuffer);
606 GLboolean glIsShader (GLuint shader);
607 GLboolean glIsTexture (GLuint texture);
608 void glLineWidth (GLfloat width);
609 void glLinkProgram (GLuint program);
610 void glPixelStorei (GLenum pname, GLint param);
611 void glPolygonOffset (GLfloat factor, GLfloat units);
612 void glReadPixels (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void* pixels);
613 void glReleaseShaderCompiler ();
614 void glRenderbufferStorage (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
615 void glSampleCoverage (GLfloat value, GLboolean invert);
616 void glScissor (GLint x, GLint y, GLsizei width, GLsizei height);
617 void glShaderBinary (GLsizei count, const(GLuint)* shaders, GLenum binaryformat, const(void)* binary, GLsizei length);
618 void glShaderSource (GLuint shader, GLsizei count, const(GLchar*)* string, const(GLint)* length);
619 void glStencilFunc (GLenum func, GLint ref_, GLuint mask);
620 void glStencilFuncSeparate (GLenum face, GLenum func, GLint ref_, GLuint mask);
621 void glStencilMask (GLuint mask);
622 void glStencilMaskSeparate (GLenum face, GLuint mask);
623 void glStencilOp (GLenum fail, GLenum zfail, GLenum zpass);
624 void glStencilOpSeparate (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
625 void glTexImage2D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const(void)* pixels);
626 void glTexParameterf (GLenum target, GLenum pname, GLfloat param);
627 void glTexParameterfv (GLenum target, GLenum pname, const(GLfloat)* params);
628 void glTexParameteri (GLenum target, GLenum pname, GLint param);
629 void glTexParameteriv (GLenum target, GLenum pname, const(GLint)* params);
630 void glTexSubImage2D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const(void)* pixels);
631 void glUniform1f (GLint location, GLfloat v0);
632 void glUniform1fv (GLint location, GLsizei count, const(GLfloat)* value);
633 void glUniform1i (GLint location, GLint v0);
634 void glUniform1iv (GLint location, GLsizei count, const(GLint)* value);
635 void glUniform2f (GLint location, GLfloat v0, GLfloat v1);
636 void glUniform2fv (GLint location, GLsizei count, const(GLfloat)* value);
637 void glUniform2i (GLint location, GLint v0, GLint v1);
638 void glUniform2iv (GLint location, GLsizei count, const(GLint)* value);
639 void glUniform3f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
640 void glUniform3fv (GLint location, GLsizei count, const(GLfloat)* value);
641 void glUniform3i (GLint location, GLint v0, GLint v1, GLint v2);
642 void glUniform3iv (GLint location, GLsizei count, const(GLint)* value);
643 void glUniform4f (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
644 void glUniform4fv (GLint location, GLsizei count, const(GLfloat)* value);
645 void glUniform4i (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
646 void glUniform4iv (GLint location, GLsizei count, const(GLint)* value);
647 void glUniformMatrix2fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
648 void glUniformMatrix3fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
649 void glUniformMatrix4fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
650 void glUseProgram (GLuint program);
651 void glValidateProgram (GLuint program);
652 void glVertexAttrib1f (GLuint index, GLfloat x);
653 void glVertexAttrib1fv (GLuint index, const(GLfloat)* v);
654 void glVertexAttrib2f (GLuint index, GLfloat x, GLfloat y);
655 void glVertexAttrib2fv (GLuint index, const(GLfloat)* v);
656 void glVertexAttrib3f (GLuint index, GLfloat x, GLfloat y, GLfloat z);
657 void glVertexAttrib3fv (GLuint index, const(GLfloat)* v);
658 void glVertexAttrib4f (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
659 void glVertexAttrib4fv (GLuint index, const(GLfloat)* v);
660 void glVertexAttribPointer (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const(void)* pointer);
661 void glViewport (GLint x, GLint y, GLsizei width, GLsizei height);
662 
663 /* GL_ES_VERSION_2_0 */
664 
665 enum GL_ES_VERSION_3_0 = 1;
666 alias GLhalf = ushort;
667 enum GL_READ_BUFFER = 0x0C02;
668 enum GL_UNPACK_ROW_LENGTH = 0x0CF2;
669 enum GL_UNPACK_SKIP_ROWS = 0x0CF3;
670 enum GL_UNPACK_SKIP_PIXELS = 0x0CF4;
671 enum GL_PACK_ROW_LENGTH = 0x0D02;
672 enum GL_PACK_SKIP_ROWS = 0x0D03;
673 enum GL_PACK_SKIP_PIXELS = 0x0D04;
674 enum GL_COLOR = 0x1800;
675 enum GL_DEPTH = 0x1801;
676 enum GL_STENCIL = 0x1802;
677 enum GL_RED = 0x1903;
678 enum GL_RGB8 = 0x8051;
679 enum GL_RGBA8 = 0x8058;
680 enum GL_RGB10_A2 = 0x8059;
681 enum GL_TEXTURE_BINDING_3D = 0x806A;
682 enum GL_UNPACK_SKIP_IMAGES = 0x806D;
683 enum GL_UNPACK_IMAGE_HEIGHT = 0x806E;
684 enum GL_TEXTURE_3D = 0x806F;
685 enum GL_TEXTURE_WRAP_R = 0x8072;
686 enum GL_MAX_3D_TEXTURE_SIZE = 0x8073;
687 enum GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368;
688 enum GL_MAX_ELEMENTS_VERTICES = 0x80E8;
689 enum GL_MAX_ELEMENTS_INDICES = 0x80E9;
690 enum GL_TEXTURE_MIN_LOD = 0x813A;
691 enum GL_TEXTURE_MAX_LOD = 0x813B;
692 enum GL_TEXTURE_BASE_LEVEL = 0x813C;
693 enum GL_TEXTURE_MAX_LEVEL = 0x813D;
694 enum GL_MIN = 0x8007;
695 enum GL_MAX = 0x8008;
696 enum GL_DEPTH_COMPONENT24 = 0x81A6;
697 enum GL_MAX_TEXTURE_LOD_BIAS = 0x84FD;
698 enum GL_TEXTURE_COMPARE_MODE = 0x884C;
699 enum GL_TEXTURE_COMPARE_FUNC = 0x884D;
700 enum GL_CURRENT_QUERY = 0x8865;
701 enum GL_QUERY_RESULT = 0x8866;
702 enum GL_QUERY_RESULT_AVAILABLE = 0x8867;
703 enum GL_BUFFER_MAPPED = 0x88BC;
704 enum GL_BUFFER_MAP_POINTER = 0x88BD;
705 enum GL_STREAM_READ = 0x88E1;
706 enum GL_STREAM_COPY = 0x88E2;
707 enum GL_STATIC_READ = 0x88E5;
708 enum GL_STATIC_COPY = 0x88E6;
709 enum GL_DYNAMIC_READ = 0x88E9;
710 enum GL_DYNAMIC_COPY = 0x88EA;
711 enum GL_MAX_DRAW_BUFFERS = 0x8824;
712 enum GL_DRAW_BUFFER0 = 0x8825;
713 enum GL_DRAW_BUFFER1 = 0x8826;
714 enum GL_DRAW_BUFFER2 = 0x8827;
715 enum GL_DRAW_BUFFER3 = 0x8828;
716 enum GL_DRAW_BUFFER4 = 0x8829;
717 enum GL_DRAW_BUFFER5 = 0x882A;
718 enum GL_DRAW_BUFFER6 = 0x882B;
719 enum GL_DRAW_BUFFER7 = 0x882C;
720 enum GL_DRAW_BUFFER8 = 0x882D;
721 enum GL_DRAW_BUFFER9 = 0x882E;
722 enum GL_DRAW_BUFFER10 = 0x882F;
723 enum GL_DRAW_BUFFER11 = 0x8830;
724 enum GL_DRAW_BUFFER12 = 0x8831;
725 enum GL_DRAW_BUFFER13 = 0x8832;
726 enum GL_DRAW_BUFFER14 = 0x8833;
727 enum GL_DRAW_BUFFER15 = 0x8834;
728 enum GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49;
729 enum GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A;
730 enum GL_SAMPLER_3D = 0x8B5F;
731 enum GL_SAMPLER_2D_SHADOW = 0x8B62;
732 enum GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B;
733 enum GL_PIXEL_PACK_BUFFER = 0x88EB;
734 enum GL_PIXEL_UNPACK_BUFFER = 0x88EC;
735 enum GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED;
736 enum GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF;
737 enum GL_FLOAT_MAT2x3 = 0x8B65;
738 enum GL_FLOAT_MAT2x4 = 0x8B66;
739 enum GL_FLOAT_MAT3x2 = 0x8B67;
740 enum GL_FLOAT_MAT3x4 = 0x8B68;
741 enum GL_FLOAT_MAT4x2 = 0x8B69;
742 enum GL_FLOAT_MAT4x3 = 0x8B6A;
743 enum GL_SRGB = 0x8C40;
744 enum GL_SRGB8 = 0x8C41;
745 enum GL_SRGB8_ALPHA8 = 0x8C43;
746 enum GL_COMPARE_REF_TO_TEXTURE = 0x884E;
747 enum GL_MAJOR_VERSION = 0x821B;
748 enum GL_MINOR_VERSION = 0x821C;
749 enum GL_NUM_EXTENSIONS = 0x821D;
750 enum GL_RGBA32F = 0x8814;
751 enum GL_RGB32F = 0x8815;
752 enum GL_RGBA16F = 0x881A;
753 enum GL_RGB16F = 0x881B;
754 enum GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD;
755 enum GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF;
756 enum GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904;
757 enum GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905;
758 enum GL_MAX_VARYING_COMPONENTS = 0x8B4B;
759 enum GL_TEXTURE_2D_ARRAY = 0x8C1A;
760 enum GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D;
761 enum GL_R11F_G11F_B10F = 0x8C3A;
762 enum GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B;
763 enum GL_RGB9_E5 = 0x8C3D;
764 enum GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E;
765 enum GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76;
766 enum GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F;
767 enum GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80;
768 enum GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83;
769 enum GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84;
770 enum GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85;
771 enum GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88;
772 enum GL_RASTERIZER_DISCARD = 0x8C89;
773 enum GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A;
774 enum GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B;
775 enum GL_INTERLEAVED_ATTRIBS = 0x8C8C;
776 enum GL_SEPARATE_ATTRIBS = 0x8C8D;
777 enum GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E;
778 enum GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F;
779 enum GL_RGBA32UI = 0x8D70;
780 enum GL_RGB32UI = 0x8D71;
781 enum GL_RGBA16UI = 0x8D76;
782 enum GL_RGB16UI = 0x8D77;
783 enum GL_RGBA8UI = 0x8D7C;
784 enum GL_RGB8UI = 0x8D7D;
785 enum GL_RGBA32I = 0x8D82;
786 enum GL_RGB32I = 0x8D83;
787 enum GL_RGBA16I = 0x8D88;
788 enum GL_RGB16I = 0x8D89;
789 enum GL_RGBA8I = 0x8D8E;
790 enum GL_RGB8I = 0x8D8F;
791 enum GL_RED_INTEGER = 0x8D94;
792 enum GL_RGB_INTEGER = 0x8D98;
793 enum GL_RGBA_INTEGER = 0x8D99;
794 enum GL_SAMPLER_2D_ARRAY = 0x8DC1;
795 enum GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4;
796 enum GL_SAMPLER_CUBE_SHADOW = 0x8DC5;
797 enum GL_UNSIGNED_INT_VEC2 = 0x8DC6;
798 enum GL_UNSIGNED_INT_VEC3 = 0x8DC7;
799 enum GL_UNSIGNED_INT_VEC4 = 0x8DC8;
800 enum GL_INT_SAMPLER_2D = 0x8DCA;
801 enum GL_INT_SAMPLER_3D = 0x8DCB;
802 enum GL_INT_SAMPLER_CUBE = 0x8DCC;
803 enum GL_INT_SAMPLER_2D_ARRAY = 0x8DCF;
804 enum GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2;
805 enum GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3;
806 enum GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4;
807 enum GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7;
808 enum GL_BUFFER_ACCESS_FLAGS = 0x911F;
809 enum GL_BUFFER_MAP_LENGTH = 0x9120;
810 enum GL_BUFFER_MAP_OFFSET = 0x9121;
811 enum GL_DEPTH_COMPONENT32F = 0x8CAC;
812 enum GL_DEPTH32F_STENCIL8 = 0x8CAD;
813 enum GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD;
814 enum GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210;
815 enum GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211;
816 enum GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212;
817 enum GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213;
818 enum GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214;
819 enum GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215;
820 enum GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216;
821 enum GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217;
822 enum GL_FRAMEBUFFER_DEFAULT = 0x8218;
823 enum GL_FRAMEBUFFER_UNDEFINED = 0x8219;
824 enum GL_DEPTH_STENCIL_ATTACHMENT = 0x821A;
825 enum GL_DEPTH_STENCIL = 0x84F9;
826 enum GL_UNSIGNED_INT_24_8 = 0x84FA;
827 enum GL_DEPTH24_STENCIL8 = 0x88F0;
828 enum GL_UNSIGNED_NORMALIZED = 0x8C17;
829 enum GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6;
830 enum GL_READ_FRAMEBUFFER = 0x8CA8;
831 enum GL_DRAW_FRAMEBUFFER = 0x8CA9;
832 enum GL_READ_FRAMEBUFFER_BINDING = 0x8CAA;
833 enum GL_RENDERBUFFER_SAMPLES = 0x8CAB;
834 enum GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4;
835 enum GL_MAX_COLOR_ATTACHMENTS = 0x8CDF;
836 enum GL_COLOR_ATTACHMENT1 = 0x8CE1;
837 enum GL_COLOR_ATTACHMENT2 = 0x8CE2;
838 enum GL_COLOR_ATTACHMENT3 = 0x8CE3;
839 enum GL_COLOR_ATTACHMENT4 = 0x8CE4;
840 enum GL_COLOR_ATTACHMENT5 = 0x8CE5;
841 enum GL_COLOR_ATTACHMENT6 = 0x8CE6;
842 enum GL_COLOR_ATTACHMENT7 = 0x8CE7;
843 enum GL_COLOR_ATTACHMENT8 = 0x8CE8;
844 enum GL_COLOR_ATTACHMENT9 = 0x8CE9;
845 enum GL_COLOR_ATTACHMENT10 = 0x8CEA;
846 enum GL_COLOR_ATTACHMENT11 = 0x8CEB;
847 enum GL_COLOR_ATTACHMENT12 = 0x8CEC;
848 enum GL_COLOR_ATTACHMENT13 = 0x8CED;
849 enum GL_COLOR_ATTACHMENT14 = 0x8CEE;
850 enum GL_COLOR_ATTACHMENT15 = 0x8CEF;
851 enum GL_COLOR_ATTACHMENT16 = 0x8CF0;
852 enum GL_COLOR_ATTACHMENT17 = 0x8CF1;
853 enum GL_COLOR_ATTACHMENT18 = 0x8CF2;
854 enum GL_COLOR_ATTACHMENT19 = 0x8CF3;
855 enum GL_COLOR_ATTACHMENT20 = 0x8CF4;
856 enum GL_COLOR_ATTACHMENT21 = 0x8CF5;
857 enum GL_COLOR_ATTACHMENT22 = 0x8CF6;
858 enum GL_COLOR_ATTACHMENT23 = 0x8CF7;
859 enum GL_COLOR_ATTACHMENT24 = 0x8CF8;
860 enum GL_COLOR_ATTACHMENT25 = 0x8CF9;
861 enum GL_COLOR_ATTACHMENT26 = 0x8CFA;
862 enum GL_COLOR_ATTACHMENT27 = 0x8CFB;
863 enum GL_COLOR_ATTACHMENT28 = 0x8CFC;
864 enum GL_COLOR_ATTACHMENT29 = 0x8CFD;
865 enum GL_COLOR_ATTACHMENT30 = 0x8CFE;
866 enum GL_COLOR_ATTACHMENT31 = 0x8CFF;
867 enum GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56;
868 enum GL_MAX_SAMPLES = 0x8D57;
869 enum GL_HALF_FLOAT = 0x140B;
870 enum GL_MAP_READ_BIT = 0x0001;
871 enum GL_MAP_WRITE_BIT = 0x0002;
872 enum GL_MAP_INVALIDATE_RANGE_BIT = 0x0004;
873 enum GL_MAP_INVALIDATE_BUFFER_BIT = 0x0008;
874 enum GL_MAP_FLUSH_EXPLICIT_BIT = 0x0010;
875 enum GL_MAP_UNSYNCHRONIZED_BIT = 0x0020;
876 enum GL_RG = 0x8227;
877 enum GL_RG_INTEGER = 0x8228;
878 enum GL_R8 = 0x8229;
879 enum GL_RG8 = 0x822B;
880 enum GL_R16F = 0x822D;
881 enum GL_R32F = 0x822E;
882 enum GL_RG16F = 0x822F;
883 enum GL_RG32F = 0x8230;
884 enum GL_R8I = 0x8231;
885 enum GL_R8UI = 0x8232;
886 enum GL_R16I = 0x8233;
887 enum GL_R16UI = 0x8234;
888 enum GL_R32I = 0x8235;
889 enum GL_R32UI = 0x8236;
890 enum GL_RG8I = 0x8237;
891 enum GL_RG8UI = 0x8238;
892 enum GL_RG16I = 0x8239;
893 enum GL_RG16UI = 0x823A;
894 enum GL_RG32I = 0x823B;
895 enum GL_RG32UI = 0x823C;
896 enum GL_VERTEX_ARRAY_BINDING = 0x85B5;
897 enum GL_R8_SNORM = 0x8F94;
898 enum GL_RG8_SNORM = 0x8F95;
899 enum GL_RGB8_SNORM = 0x8F96;
900 enum GL_RGBA8_SNORM = 0x8F97;
901 enum GL_SIGNED_NORMALIZED = 0x8F9C;
902 enum GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69;
903 enum GL_COPY_READ_BUFFER = 0x8F36;
904 enum GL_COPY_WRITE_BUFFER = 0x8F37;
905 enum GL_COPY_READ_BUFFER_BINDING = 0x8F36;
906 enum GL_COPY_WRITE_BUFFER_BINDING = 0x8F37;
907 enum GL_UNIFORM_BUFFER = 0x8A11;
908 enum GL_UNIFORM_BUFFER_BINDING = 0x8A28;
909 enum GL_UNIFORM_BUFFER_START = 0x8A29;
910 enum GL_UNIFORM_BUFFER_SIZE = 0x8A2A;
911 enum GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B;
912 enum GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D;
913 enum GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E;
914 enum GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F;
915 enum GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30;
916 enum GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31;
917 enum GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33;
918 enum GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34;
919 enum GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35;
920 enum GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36;
921 enum GL_UNIFORM_TYPE = 0x8A37;
922 enum GL_UNIFORM_SIZE = 0x8A38;
923 enum GL_UNIFORM_NAME_LENGTH = 0x8A39;
924 enum GL_UNIFORM_BLOCK_INDEX = 0x8A3A;
925 enum GL_UNIFORM_OFFSET = 0x8A3B;
926 enum GL_UNIFORM_ARRAY_STRIDE = 0x8A3C;
927 enum GL_UNIFORM_MATRIX_STRIDE = 0x8A3D;
928 enum GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E;
929 enum GL_UNIFORM_BLOCK_BINDING = 0x8A3F;
930 enum GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40;
931 enum GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41;
932 enum GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42;
933 enum GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43;
934 enum GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44;
935 enum GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46;
936 enum GL_INVALID_INDEX = 0xFFFFFFFFu;
937 enum GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122;
938 enum GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125;
939 enum GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111;
940 enum GL_OBJECT_TYPE = 0x9112;
941 enum GL_SYNC_CONDITION = 0x9113;
942 enum GL_SYNC_STATUS = 0x9114;
943 enum GL_SYNC_FLAGS = 0x9115;
944 enum GL_SYNC_FENCE = 0x9116;
945 enum GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117;
946 enum GL_UNSIGNALED = 0x9118;
947 enum GL_SIGNALED = 0x9119;
948 enum GL_ALREADY_SIGNALED = 0x911A;
949 enum GL_TIMEOUT_EXPIRED = 0x911B;
950 enum GL_CONDITION_SATISFIED = 0x911C;
951 enum GL_WAIT_FAILED = 0x911D;
952 enum GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001;
953 enum GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFFuL;
954 enum GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE;
955 enum GL_ANY_SAMPLES_PASSED = 0x8C2F;
956 enum GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A;
957 enum GL_SAMPLER_BINDING = 0x8919;
958 enum GL_RGB10_A2UI = 0x906F;
959 enum GL_TEXTURE_SWIZZLE_R = 0x8E42;
960 enum GL_TEXTURE_SWIZZLE_G = 0x8E43;
961 enum GL_TEXTURE_SWIZZLE_B = 0x8E44;
962 enum GL_TEXTURE_SWIZZLE_A = 0x8E45;
963 enum GL_GREEN = 0x1904;
964 enum GL_BLUE = 0x1905;
965 enum GL_INT_2_10_10_10_REV = 0x8D9F;
966 enum GL_TRANSFORM_FEEDBACK = 0x8E22;
967 enum GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23;
968 enum GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24;
969 enum GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25;
970 enum GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257;
971 enum GL_PROGRAM_BINARY_LENGTH = 0x8741;
972 enum GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE;
973 enum GL_PROGRAM_BINARY_FORMATS = 0x87FF;
974 enum GL_COMPRESSED_R11_EAC = 0x9270;
975 enum GL_COMPRESSED_SIGNED_R11_EAC = 0x9271;
976 enum GL_COMPRESSED_RG11_EAC = 0x9272;
977 enum GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273;
978 enum GL_COMPRESSED_RGB8_ETC2 = 0x9274;
979 enum GL_COMPRESSED_SRGB8_ETC2 = 0x9275;
980 enum GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276;
981 enum GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277;
982 enum GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278;
983 enum GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279;
984 enum GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F;
985 enum GL_MAX_ELEMENT_INDEX = 0x8D6B;
986 enum GL_NUM_SAMPLE_COUNTS = 0x9380;
987 enum GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF;
988 alias PFNGLREADBUFFERPROC = void function (GLenum src);
989 alias PFNGLDRAWRANGEELEMENTSPROC = void function (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const(void)* indices);
990 alias PFNGLTEXIMAGE3DPROC = void function (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const(void)* pixels);
991 alias PFNGLTEXSUBIMAGE3DPROC = void function (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const(void)* pixels);
992 alias PFNGLCOPYTEXSUBIMAGE3DPROC = void function (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
993 alias PFNGLCOMPRESSEDTEXIMAGE3DPROC = void function (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const(void)* data);
994 alias PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC = void function (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const(void)* data);
995 alias PFNGLGENQUERIESPROC = void function (GLsizei n, GLuint* ids);
996 alias PFNGLDELETEQUERIESPROC = void function (GLsizei n, const(GLuint)* ids);
997 alias PFNGLISQUERYPROC = ubyte function (GLuint id);
998 alias PFNGLBEGINQUERYPROC = void function (GLenum target, GLuint id);
999 alias PFNGLENDQUERYPROC = void function (GLenum target);
1000 alias PFNGLGETQUERYIVPROC = void function (GLenum target, GLenum pname, GLint* params);
1001 alias PFNGLGETQUERYOBJECTUIVPROC = void function (GLuint id, GLenum pname, GLuint* params);
1002 alias PFNGLUNMAPBUFFERPROC = ubyte function (GLenum target);
1003 alias PFNGLGETBUFFERPOINTERVPROC = void function (GLenum target, GLenum pname, void** params);
1004 alias PFNGLDRAWBUFFERSPROC = void function (GLsizei n, const(GLenum)* bufs);
1005 alias PFNGLUNIFORMMATRIX2X3FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1006 alias PFNGLUNIFORMMATRIX3X2FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1007 alias PFNGLUNIFORMMATRIX2X4FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1008 alias PFNGLUNIFORMMATRIX4X2FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1009 alias PFNGLUNIFORMMATRIX3X4FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1010 alias PFNGLUNIFORMMATRIX4X3FVPROC = void function (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1011 alias PFNGLBLITFRAMEBUFFERPROC = void function (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
1012 alias PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC = void function (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1013 alias PFNGLFRAMEBUFFERTEXTURELAYERPROC = void function (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
1014 alias PFNGLMAPBUFFERRANGEPROC = void* function (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
1015 alias PFNGLFLUSHMAPPEDBUFFERRANGEPROC = void function (GLenum target, GLintptr offset, GLsizeiptr length);
1016 alias PFNGLBINDVERTEXARRAYPROC = void function (GLuint array);
1017 alias PFNGLDELETEVERTEXARRAYSPROC = void function (GLsizei n, const(GLuint)* arrays);
1018 alias PFNGLGENVERTEXARRAYSPROC = void function (GLsizei n, GLuint* arrays);
1019 alias PFNGLISVERTEXARRAYPROC = ubyte function (GLuint array);
1020 alias PFNGLGETINTEGERI_VPROC = void function (GLenum target, GLuint index, GLint* data);
1021 alias PFNGLBEGINTRANSFORMFEEDBACKPROC = void function (GLenum primitiveMode);
1022 alias PFNGLENDTRANSFORMFEEDBACKPROC = void function ();
1023 alias PFNGLBINDBUFFERRANGEPROC = void function (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
1024 alias PFNGLBINDBUFFERBASEPROC = void function (GLenum target, GLuint index, GLuint buffer);
1025 alias PFNGLTRANSFORMFEEDBACKVARYINGSPROC = void function (GLuint program, GLsizei count, const(GLchar*)* varyings, GLenum bufferMode);
1026 alias PFNGLGETTRANSFORMFEEDBACKVARYINGPROC = void function (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name);
1027 alias PFNGLVERTEXATTRIBIPOINTERPROC = void function (GLuint index, GLint size, GLenum type, GLsizei stride, const(void)* pointer);
1028 alias PFNGLGETVERTEXATTRIBIIVPROC = void function (GLuint index, GLenum pname, GLint* params);
1029 alias PFNGLGETVERTEXATTRIBIUIVPROC = void function (GLuint index, GLenum pname, GLuint* params);
1030 alias PFNGLVERTEXATTRIBI4IPROC = void function (GLuint index, GLint x, GLint y, GLint z, GLint w);
1031 alias PFNGLVERTEXATTRIBI4UIPROC = void function (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
1032 alias PFNGLVERTEXATTRIBI4IVPROC = void function (GLuint index, const(GLint)* v);
1033 alias PFNGLVERTEXATTRIBI4UIVPROC = void function (GLuint index, const(GLuint)* v);
1034 alias PFNGLGETUNIFORMUIVPROC = void function (GLuint program, GLint location, GLuint* params);
1035 alias PFNGLGETFRAGDATALOCATIONPROC = int function (GLuint program, const(GLchar)* name);
1036 alias PFNGLUNIFORM1UIPROC = void function (GLint location, GLuint v0);
1037 alias PFNGLUNIFORM2UIPROC = void function (GLint location, GLuint v0, GLuint v1);
1038 alias PFNGLUNIFORM3UIPROC = void function (GLint location, GLuint v0, GLuint v1, GLuint v2);
1039 alias PFNGLUNIFORM4UIPROC = void function (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
1040 alias PFNGLUNIFORM1UIVPROC = void function (GLint location, GLsizei count, const(GLuint)* value);
1041 alias PFNGLUNIFORM2UIVPROC = void function (GLint location, GLsizei count, const(GLuint)* value);
1042 alias PFNGLUNIFORM3UIVPROC = void function (GLint location, GLsizei count, const(GLuint)* value);
1043 alias PFNGLUNIFORM4UIVPROC = void function (GLint location, GLsizei count, const(GLuint)* value);
1044 alias PFNGLCLEARBUFFERIVPROC = void function (GLenum buffer, GLint drawbuffer, const(GLint)* value);
1045 alias PFNGLCLEARBUFFERUIVPROC = void function (GLenum buffer, GLint drawbuffer, const(GLuint)* value);
1046 alias PFNGLCLEARBUFFERFVPROC = void function (GLenum buffer, GLint drawbuffer, const(GLfloat)* value);
1047 alias PFNGLCLEARBUFFERFIPROC = void function (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
1048 alias PFNGLGETSTRINGIPROC = const(ubyte)* function (GLenum name, GLuint index);
1049 alias PFNGLCOPYBUFFERSUBDATAPROC = void function (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
1050 alias PFNGLGETUNIFORMINDICESPROC = void function (GLuint program, GLsizei uniformCount, const(GLchar*)* uniformNames, GLuint* uniformIndices);
1051 alias PFNGLGETACTIVEUNIFORMSIVPROC = void function (GLuint program, GLsizei uniformCount, const(GLuint)* uniformIndices, GLenum pname, GLint* params);
1052 alias PFNGLGETUNIFORMBLOCKINDEXPROC = uint function (GLuint program, const(GLchar)* uniformBlockName);
1053 alias PFNGLGETACTIVEUNIFORMBLOCKIVPROC = void function (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params);
1054 alias PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC = void function (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName);
1055 alias PFNGLUNIFORMBLOCKBINDINGPROC = void function (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
1056 alias PFNGLDRAWARRAYSINSTANCEDPROC = void function (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
1057 alias PFNGLDRAWELEMENTSINSTANCEDPROC = void function (GLenum mode, GLsizei count, GLenum type, const(void)* indices, GLsizei instancecount);
1058 alias PFNGLFENCESYNCPROC = __GLsync* function (GLenum condition, GLbitfield flags);
1059 alias PFNGLISSYNCPROC = ubyte function (GLsync sync);
1060 alias PFNGLDELETESYNCPROC = void function (GLsync sync);
1061 alias PFNGLCLIENTWAITSYNCPROC = uint function (GLsync sync, GLbitfield flags, GLuint64 timeout);
1062 alias PFNGLWAITSYNCPROC = void function (GLsync sync, GLbitfield flags, GLuint64 timeout);
1063 alias PFNGLGETINTEGER64VPROC = void function (GLenum pname, GLint64* data);
1064 alias PFNGLGETSYNCIVPROC = void function (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values);
1065 alias PFNGLGETINTEGER64I_VPROC = void function (GLenum target, GLuint index, GLint64* data);
1066 alias PFNGLGETBUFFERPARAMETERI64VPROC = void function (GLenum target, GLenum pname, GLint64* params);
1067 alias PFNGLGENSAMPLERSPROC = void function (GLsizei count, GLuint* samplers);
1068 alias PFNGLDELETESAMPLERSPROC = void function (GLsizei count, const(GLuint)* samplers);
1069 alias PFNGLISSAMPLERPROC = ubyte function (GLuint sampler);
1070 alias PFNGLBINDSAMPLERPROC = void function (GLuint unit, GLuint sampler);
1071 alias PFNGLSAMPLERPARAMETERIPROC = void function (GLuint sampler, GLenum pname, GLint param);
1072 alias PFNGLSAMPLERPARAMETERIVPROC = void function (GLuint sampler, GLenum pname, const(GLint)* param);
1073 alias PFNGLSAMPLERPARAMETERFPROC = void function (GLuint sampler, GLenum pname, GLfloat param);
1074 alias PFNGLSAMPLERPARAMETERFVPROC = void function (GLuint sampler, GLenum pname, const(GLfloat)* param);
1075 alias PFNGLGETSAMPLERPARAMETERIVPROC = void function (GLuint sampler, GLenum pname, GLint* params);
1076 alias PFNGLGETSAMPLERPARAMETERFVPROC = void function (GLuint sampler, GLenum pname, GLfloat* params);
1077 alias PFNGLVERTEXATTRIBDIVISORPROC = void function (GLuint index, GLuint divisor);
1078 alias PFNGLBINDTRANSFORMFEEDBACKPROC = void function (GLenum target, GLuint id);
1079 alias PFNGLDELETETRANSFORMFEEDBACKSPROC = void function (GLsizei n, const(GLuint)* ids);
1080 alias PFNGLGENTRANSFORMFEEDBACKSPROC = void function (GLsizei n, GLuint* ids);
1081 alias PFNGLISTRANSFORMFEEDBACKPROC = ubyte function (GLuint id);
1082 alias PFNGLPAUSETRANSFORMFEEDBACKPROC = void function ();
1083 alias PFNGLRESUMETRANSFORMFEEDBACKPROC = void function ();
1084 alias PFNGLGETPROGRAMBINARYPROC = void function (GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, void* binary);
1085 alias PFNGLPROGRAMBINARYPROC = void function (GLuint program, GLenum binaryFormat, const(void)* binary, GLsizei length);
1086 alias PFNGLPROGRAMPARAMETERIPROC = void function (GLuint program, GLenum pname, GLint value);
1087 alias PFNGLINVALIDATEFRAMEBUFFERPROC = void function (GLenum target, GLsizei numAttachments, const(GLenum)* attachments);
1088 alias PFNGLINVALIDATESUBFRAMEBUFFERPROC = void function (GLenum target, GLsizei numAttachments, const(GLenum)* attachments, GLint x, GLint y, GLsizei width, GLsizei height);
1089 alias PFNGLTEXSTORAGE2DPROC = void function (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1090 alias PFNGLTEXSTORAGE3DPROC = void function (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1091 alias PFNGLGETINTERNALFORMATIVPROC = void function (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params);
1092 void glReadBuffer (GLenum src);
1093 void glDrawRangeElements (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const(void)* indices);
1094 void glTexImage3D (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const(void)* pixels);
1095 void glTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const(void)* pixels);
1096 void glCopyTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
1097 void glCompressedTexImage3D (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const(void)* data);
1098 void glCompressedTexSubImage3D (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const(void)* data);
1099 void glGenQueries (GLsizei n, GLuint* ids);
1100 void glDeleteQueries (GLsizei n, const(GLuint)* ids);
1101 GLboolean glIsQuery (GLuint id);
1102 void glBeginQuery (GLenum target, GLuint id);
1103 void glEndQuery (GLenum target);
1104 void glGetQueryiv (GLenum target, GLenum pname, GLint* params);
1105 void glGetQueryObjectuiv (GLuint id, GLenum pname, GLuint* params);
1106 GLboolean glUnmapBuffer (GLenum target);
1107 void glGetBufferPointerv (GLenum target, GLenum pname, void** params);
1108 void glDrawBuffers (GLsizei n, const(GLenum)* bufs);
1109 void glUniformMatrix2x3fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1110 void glUniformMatrix3x2fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1111 void glUniformMatrix2x4fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1112 void glUniformMatrix4x2fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1113 void glUniformMatrix3x4fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1114 void glUniformMatrix4x3fv (GLint location, GLsizei count, GLboolean transpose, const(GLfloat)* value);
1115 void glBlitFramebuffer (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
1116 void glRenderbufferStorageMultisample (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
1117 void glFramebufferTextureLayer (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
1118 void* glMapBufferRange (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
1119 void glFlushMappedBufferRange (GLenum target, GLintptr offset, GLsizeiptr length);
1120 void glBindVertexArray (GLuint array);
1121 void glDeleteVertexArrays (GLsizei n, const(GLuint)* arrays);
1122 void glGenVertexArrays (GLsizei n, GLuint* arrays);
1123 GLboolean glIsVertexArray (GLuint array);
1124 void glGetIntegeri_v (GLenum target, GLuint index, GLint* data);
1125 void glBeginTransformFeedback (GLenum primitiveMode);
1126 void glEndTransformFeedback ();
1127 void glBindBufferRange (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
1128 void glBindBufferBase (GLenum target, GLuint index, GLuint buffer);
1129 void glTransformFeedbackVaryings (GLuint program, GLsizei count, const(GLchar*)* varyings, GLenum bufferMode);
1130 void glGetTransformFeedbackVarying (GLuint program, GLuint index, GLsizei bufSize, GLsizei* length, GLsizei* size, GLenum* type, GLchar* name);
1131 void glVertexAttribIPointer (GLuint index, GLint size, GLenum type, GLsizei stride, const(void)* pointer);
1132 void glGetVertexAttribIiv (GLuint index, GLenum pname, GLint* params);
1133 void glGetVertexAttribIuiv (GLuint index, GLenum pname, GLuint* params);
1134 void glVertexAttribI4i (GLuint index, GLint x, GLint y, GLint z, GLint w);
1135 void glVertexAttribI4ui (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
1136 void glVertexAttribI4iv (GLuint index, const(GLint)* v);
1137 void glVertexAttribI4uiv (GLuint index, const(GLuint)* v);
1138 void glGetUniformuiv (GLuint program, GLint location, GLuint* params);
1139 GLint glGetFragDataLocation (GLuint program, const(GLchar)* name);
1140 void glUniform1ui (GLint location, GLuint v0);
1141 void glUniform2ui (GLint location, GLuint v0, GLuint v1);
1142 void glUniform3ui (GLint location, GLuint v0, GLuint v1, GLuint v2);
1143 void glUniform4ui (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
1144 void glUniform1uiv (GLint location, GLsizei count, const(GLuint)* value);
1145 void glUniform2uiv (GLint location, GLsizei count, const(GLuint)* value);
1146 void glUniform3uiv (GLint location, GLsizei count, const(GLuint)* value);
1147 void glUniform4uiv (GLint location, GLsizei count, const(GLuint)* value);
1148 void glClearBufferiv (GLenum buffer, GLint drawbuffer, const(GLint)* value);
1149 void glClearBufferuiv (GLenum buffer, GLint drawbuffer, const(GLuint)* value);
1150 void glClearBufferfv (GLenum buffer, GLint drawbuffer, const(GLfloat)* value);
1151 void glClearBufferfi (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
1152 const(GLubyte)* glGetStringi (GLenum name, GLuint index);
1153 void glCopyBufferSubData (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
1154 void glGetUniformIndices (GLuint program, GLsizei uniformCount, const(GLchar*)* uniformNames, GLuint* uniformIndices);
1155 void glGetActiveUniformsiv (GLuint program, GLsizei uniformCount, const(GLuint)* uniformIndices, GLenum pname, GLint* params);
1156 GLuint glGetUniformBlockIndex (GLuint program, const(GLchar)* uniformBlockName);
1157 void glGetActiveUniformBlockiv (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint* params);
1158 void glGetActiveUniformBlockName (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei* length, GLchar* uniformBlockName);
1159 void glUniformBlockBinding (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
1160 void glDrawArraysInstanced (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
1161 void glDrawElementsInstanced (GLenum mode, GLsizei count, GLenum type, const(void)* indices, GLsizei instancecount);
1162 GLsync glFenceSync (GLenum condition, GLbitfield flags);
1163 GLboolean glIsSync (GLsync sync);
1164 void glDeleteSync (GLsync sync);
1165 GLenum glClientWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
1166 void glWaitSync (GLsync sync, GLbitfield flags, GLuint64 timeout);
1167 void glGetInteger64v (GLenum pname, GLint64* data);
1168 void glGetSynciv (GLsync sync, GLenum pname, GLsizei bufSize, GLsizei* length, GLint* values);
1169 void glGetInteger64i_v (GLenum target, GLuint index, GLint64* data);
1170 void glGetBufferParameteri64v (GLenum target, GLenum pname, GLint64* params);
1171 void glGenSamplers (GLsizei count, GLuint* samplers);
1172 void glDeleteSamplers (GLsizei count, const(GLuint)* samplers);
1173 GLboolean glIsSampler (GLuint sampler);
1174 void glBindSampler (GLuint unit, GLuint sampler);
1175 void glSamplerParameteri (GLuint sampler, GLenum pname, GLint param);
1176 void glSamplerParameteriv (GLuint sampler, GLenum pname, const(GLint)* param);
1177 void glSamplerParameterf (GLuint sampler, GLenum pname, GLfloat param);
1178 void glSamplerParameterfv (GLuint sampler, GLenum pname, const(GLfloat)* param);
1179 void glGetSamplerParameteriv (GLuint sampler, GLenum pname, GLint* params);
1180 void glGetSamplerParameterfv (GLuint sampler, GLenum pname, GLfloat* params);
1181 void glVertexAttribDivisor (GLuint index, GLuint divisor);
1182 void glBindTransformFeedback (GLenum target, GLuint id);
1183 void glDeleteTransformFeedbacks (GLsizei n, const(GLuint)* ids);
1184 void glGenTransformFeedbacks (GLsizei n, GLuint* ids);
1185 GLboolean glIsTransformFeedback (GLuint id);
1186 void glPauseTransformFeedback ();
1187 void glResumeTransformFeedback ();
1188 void glGetProgramBinary (GLuint program, GLsizei bufSize, GLsizei* length, GLenum* binaryFormat, void* binary);
1189 void glProgramBinary (GLuint program, GLenum binaryFormat, const(void)* binary, GLsizei length);
1190 void glProgramParameteri (GLuint program, GLenum pname, GLint value);
1191 void glInvalidateFramebuffer (GLenum target, GLsizei numAttachments, const(GLenum)* attachments);
1192 void glInvalidateSubFramebuffer (GLenum target, GLsizei numAttachments, const(GLenum)* attachments, GLint x, GLint y, GLsizei width, GLsizei height);
1193 void glTexStorage2D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
1194 void glTexStorage3D (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
1195 void glGetInternalformativ (GLenum target, GLenum internalformat, GLenum pname, GLsizei bufSize, GLint* params);
1196 
1197 /* GL_ES_VERSION_3_0 */
1198